package com.bainuo.live.api.server_api;

/**
 * Created by faraway on 20/2/17.
 */
public class UserServerApiImpl extends HttpServerApi {

    public static int LOGIN_TYPE_PWD = 1;
    public static int LOGIN_TYPE_SMS = 2;
    public static int LOGIN_TYPE_WECHAT = 3;

//    /**
//     * 登陆
//     *
//     * @param phone
//     * @param code
//     * @param pwd
//     * @param type
//     * @param callBack
//     */
//    public void login(String phone, String code, String pwd, int type, CallBack<UserInfo> callBack) {
//        if (!TextUtils.isEmpty(pwd)) {
//            String sha1str = new Sha1().getDigestOfString(pwd.getBytes());
//            pwd = MD5.md5(sha1str);
//        }
//        Map<String, String> map = new HashMap<String, String>();
//
//
//        map.put("phone", phone);
//        map.put("type", ""+type);
//        map.put("password", pwd);
//
//        if (type == LOGIN_TYPE_SMS)
//            map.put("verifycode", code);
//        else if (type == LOGIN_TYPE_WECHAT)
//            map.put("authcode", code);
//
//        Map<String, String> param = new HashMap<String, String>();
//        String desdata = null;
//        try {
//            desdata = Des.encryptDES(getObjToJson(map));
//        } catch (Exception e) {
//            e.printStackTrace();
//        }
//        param.put("data", desdata.replace(" ", ""));
//        doPost(API_LOGIN, param, callBack);
//
//    }
//
//    /**
//     * 获取验证码
//     */
//    public void getCheckCode(String mobile, String type, CallBack<GetCheckCodeResponse> callBack) {
//        Map<String, String> param = new HashMap<String, String>();
//        param.put("phone", mobile);
//        param.put("type", type);
//        doPost(API_GET_SMS, param, callBack);
//
//    }
//
//    /**
//     * 注册
//     *
//     * @param callBack
//     */
//    public void regist(String mobile, String verifycode, String pwd,String unionid,CallBack<UserInfo> callBack) {
//        if (!TextUtils.isEmpty(pwd)) {
//            String sha1str = new Sha1().getDigestOfString(pwd.getBytes());
//            pwd = MD5.md5(sha1str);
//        }
//        Map<String, String> map = new HashMap<String, String>();
//        map.put("phone", mobile);
//        map.put("verifycode", verifycode);
//        map.put("password", pwd);
//        if (unionid != null)
//            map.put("unionid", unionid);
//
//        Map<String, String> param = new HashMap<String, String>();
//        String desdata = null;
//        try {
//            desdata = Des.encryptDES(getObjToJson(map));
//        } catch (Exception e) {
//            e.printStackTrace();
//        }
//        param.put("data", desdata.replace(" ", ""));
//        doPost(API_REGIST, param, callBack);
//
//    }
//
//
////    /**
////     * 修改个人信息
////     *
////     * @param info
////     * @param callBack
////     */
////    public void updateUserInfo(UserInfo info, CallBack<UserInfo> callBack) {
////        String str = getObjToJson(info);
////        Map<String, String> param = gson.fromJson(str, typeToken);
////        doPost(API_USER_EDIT, param, callBack);
////    }
//
//    /**
//     * 查询用户信息
//     *
//     * @param uid
//     * @param callBack
//     */
//    public void getUserInfo(String uid, CallBack<UserInfo> callBack) {
//
//        Map param = new HashMap();
//        param.put("searchId", uid);
//        doGet(API_GET_USERINFO, param, callBack);
//
//    }
//
//    /**
//     * 搜索用户列表
//     *
//     * @param type     查询类型： 1＝按id，支持多个，用“，”分隔 2＝按电话，支持多个，用“，”分隔 3＝按用户名字，只支持单个名称查询
//     * @param value
//     * @param callBack
//     */
//    public void searchUserInfoList(int page, String type, String value, CallBack<UserInfoResponse> callBack) {
//        Map<String, String> param = new HashMap();
//        param.put("type", type);
//        param.put("search", value);
//        param.put("page", String.valueOf(page));
//        doGet(API_SEARCH_USER_LIST, param, callBack);
//    }
//
//    public void editPwd(String mobile, String verifycode, String pwd, CallBack<UserInfo> callBack) {
//        if (!TextUtils.isEmpty(pwd)) {
//            String sha1str = new Sha1().getDigestOfString(pwd.getBytes());
//            pwd = MD5.md5(sha1str);
//        }
//        Map<String, String> map = new HashMap<String, String>();
//        map.put("phone", mobile);
//        map.put("verifycode", verifycode);
//        map.put("password", pwd);
//
//        Map<String, String> param = new HashMap<String, String>();
//        String desdata = null;
//        try {
//            desdata = Des.encryptDES(getObjToJson(map));
//        } catch (Exception e) {
//            e.printStackTrace();
//        }
//        param.put("data", desdata.replace(" ", ""));
//        doPost(API_PWD_EDIT, param, callBack);
//
//    }
//
//    public void msgVerify(String mobile, String verifycode, int type, CallBack callBack) {
//        Map<String, String> map = new HashMap<String, String>();
//        map.put("mobile", mobile);
//        map.put("verifycode", verifycode);
//        map.put("type", String.valueOf(type));
//        doPost(API_SMS_VERIFY, map, callBack);
//
//    }
//
//    public void getAppCofig(CallBack<AppConfigInfo> callBack) {
//        doGet(API_GET_CONFIG, new HashMap<String, String>(), callBack);
//    }
//
//    public void registerPush(String token, CallBack callBack) {
//        Map<String, String> map = new HashMap<String, String>();
//        map.put("token", token);
//        doPost(API_RESITER_PUSH, map, callBack);
//    }
//
//    public void logout(CallBack callBack) {
//        doPost(API_LOGOUT, new HashMap<String, String>(), callBack);
//    }
//
//
//    public void getAreaInfo(CallBack<AreaInfos> callBack) {
//        doGet(BaseUrl.API_GET_AREA, new HashMap(), callBack);
//    }
//
//    /**
//     * 获取职称
//     *
//     * @param callBack
//     */
//    public void getProfessorList(CallBack<TitleInfos> callBack) {
//        doGet(BaseUrl.API_GET_TITLE, new HashMap(), callBack);
//    }
//
//
//    /**
//     * 获取医院信息
//     */
//    public void getHospitalInfo(String id, String name, CallBack<AreaInfos> callBack) {
//        Map<String, String> param = new HashMap();
//        if (id != null)
//            param.put("areaId", id);
//        if (name != null)
//            param.put("name", name);
//        doGet(BaseUrl.API_GET_HOSPITAL, param, callBack);
//    }
//
//    public void getHospitalInfo(String id, String name, String province, String city, String longitude, String latitude, CallBack<AreaInfos> callBack) {
//        Map<String, String> param = new HashMap();
//        if (id != null)
//            param.put("areaId", id);
//        if (name != null)
//            param.put("name", name);
//        param.put("province", province);
//        param.put("city", city);
//        param.put("longitude", longitude);
//        param.put("latitude", latitude);
//        doGet(BaseUrl.API_GET_HOSPITAL, param, callBack);
//    }
//
//    /**
//     * 个人主页
//     * @param userid
//     * @param callBack
//     */
//    public void getUserPersonal(String userid,String groupid, CallBack<UserPersonalInfo> callBack){
//        Map<String, String> param = new HashMap();
//        param.put("userId",userid);
//        if(!TextUtils.isEmpty(groupid)){
//            param.put("groupId",groupid);
//        }
//        doGet(BaseUrl.API_USER_PERSONAL, param, callBack);
//    }
//
//    public void getNotifyMsgList(int page, CallBack<ListResponse<NotifyMsgInfo>> callBack) {
//        Map<String, String> param = new HashMap<>();
//        param.put("page", String.valueOf(page));
//        doGet(API_SERVICE_LIST, param, callBack);
//    }
//
//    public void authDetail(String applyId,CallBack<UserInfo> callBack) {
//        Map<String, String> map = new HashMap<String, String>();
////        map.put("type", type + "");
//        if (applyId != null)
//            map.put("applyId",applyId);
//        doGet(API_AUTH_DETAIL, map, callBack);
//    }
//
//    public void doctorAuthor(UserInfo userInfo, CallBack callBack) {
//        Map<String, String> param = new HashMap<>();
//        param.put("name", userInfo.getName());
//        param.put("orgId", userInfo.getOrgId());
//        param.put("orgName", userInfo.getOrgName());
//        param.put("dept", userInfo.getDept());
//        param.put("title", userInfo.getTitle());
//        param.put("introduction", userInfo.getIntroduction());
////        param.put("introduction", userInfo.getIntroduction());
//
//        if (userInfo.getImages() != null){
//            Gson gson = new Gson();
//            String imgUrl = gson.toJson(userInfo.getImages());
//            param.put("images", imgUrl);
//        }
//
//        doPost(API_DOCTOR_AUTHOR, param, callBack);
//    }
//
//    /**
//     * 獲取用戶信息
//     * @param callBack
//     */
//    public void getUserInfo(CallBack<UserInfo> callBack){
//        doGet(API_USER_INGO, null, callBack);
//    }
//
//    /**
//     * 更新用戶信息
//     * @param userInfo
//     * @param callBack
//     */
//    public void updateUserInfo(UserInfo userInfo,CallBack<UserInfo> callBack){
//
//        Map<String, String> param = new HashMap<>();
//        if (!TextUtils.isEmpty(userInfo.getName()))
//            param.put("nickName", userInfo.getName());
//        if (!TextUtils.isEmpty(userInfo.getAvatar()))
//            param.put("avatar", userInfo.getAvatar());
//        doPost(API_USER_UPDATE, param, callBack);
//    }
//
//    public void sendFeedBack(String content, String phone, int type, CallBack callBack) {
//        Map<String, String> param = new HashMap<>();
//        param.put("suggestion", content);
//        param.put("contact", phone);
////        param.put("type", String.valueOf(type));
//        doPost(API_FEEDBACK, param, callBack);
//    }
//
//
//    /**
//     * 获取融云token
//     * @param callBack
//     */
//    public void getRongYunToken(CallBack<RongrunTokenInfo> callBack){
//        doGet(API_RONGYUN_TOKEN,new HashMap<String, String>(),callBack);
//    }
//
//    /**
//     * 添加银行卡
//     * @param name
//     * @param bank
//     * @param account
//     * @param callBack
//     */
//    public void addBankCard(String name, String bank, String account, CallBack callBack) {
//        Map<String, String> param = new HashMap<>();
//        param.put("name", name);
//        param.put("bank", bank);
//        param.put("account", account);
//        doPost(API_BANK_ADD, param, callBack);
//    }
//
//    /**
//     * 查询银行卡
//     * @param callBack
//     */
//    public void getBankCardList(CallBack<ListResponse<BankInfo>> callBack) {
//        Map<String, String> param = new HashMap<>();
//        doGet(API_BANK_LIST, param, callBack);
//    }
//
//    /**
//     * 申请提现
//     * @param bankAccountId
//     * @param amount
//     * @param callBack
//     */
//    public void applyCash(String bankAccountId, String amount, CallBack<UserInfo> callBack) {
//        Map<String, String> param = new HashMap<>();
//        param.put("bankAccountId", bankAccountId);
//        param.put("amount", amount);
//        doPost(API_BILL_APPLY_CASH, param, callBack);
//    }
//
//    /**
//     * 删除银行卡
//     * @param accountId
//     * @param callBack
//     */
//    public void delBankCard(String accountId, CallBack callBack) {
//        Map<String, String> param = new HashMap<>();
//        param.put("accountId", accountId);
//        doPost(API_BANK_DEL, param, callBack);
//    }
//
//    /**
//     * 绑定手机号
//     * @param callBack
//     */
//    public void bindPhone(String mobile,String pwd,String verifycode,CallBack<UserInfo> callBack){
//        if (!TextUtils.isEmpty(pwd)) {
//            String sha1str = new Sha1().getDigestOfString(pwd.getBytes());
//            pwd = MD5.md5(sha1str);
//        }
//        Map<String, String> map = new HashMap<String, String>();
//        map.put("phone", mobile);
//        map.put("verifycode", verifycode);
//        map.put("password", pwd);
//
//        Map<String, String> param = new HashMap<String, String>();
//        String desdata = null;
//        try {
//            desdata = Des.encryptDES(getObjToJson(map));
//        } catch (Exception e) {
//            e.printStackTrace();
//        }
//        param.put("data", desdata.replace(" ", ""));
//        doPost(API_BIND_PHONE, param, callBack);
//    }
//
//    /**
//     * 绑定微信
//     * @param authcode
//     * @param callBack
//     */
//    public void bindWeChat(String authcode,CallBack<UserInfo> callBack){
//        Map<String, String> param = new HashMap<>();
//        param.put("authcode", authcode);
//        doPost(API_BIND_WECAHT, param, callBack);
//    }
}
